#include<bits/stdc++.h>

using i32 = int;
using u32 = unsigned int;
using i64 = long long;
using u64 = unsigned long long;

int main() {
	
	std::ios::sync_with_stdio(false);
	std::cin.tie(0);

	int q;
	std::cin >> q;
	std::set<int> st;
	std::map<int, int> mp;
	for(int i = 0; i < q; i++) {
		int op, x;
		std::cin >> op;
		if(op == 1) {
			std::cin >> x;
			st.insert(x);
			mp[x]++;
		}else if(op == 2) {
			std::cin >> x;
			mp[x]--;
			if(mp[x] == 0) {
				st.erase(x);
			}
		}else {
			std::cout << st.size() << "\n";
		}
	}

	return 0;
}